package com.airena.service;

import com.airena.entity.po.ChatMessage;
import com.airena.entity.vo.RoleInfoVo;
import com.airena.result.Result;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 会话消息表 服务类
 * </p>
 *
 * @author mender
 * @since 2025-09-28
 */
public interface IChatMessageService extends IService<ChatMessage> {

    /**
     * 聊天记录持久化到mysql
     * @param memoryId
     * @param ChatMessage
     */
    void saveMessages(String memoryId, String ChatMessage);

    /**
     * 聊天记录持久化到mysql - 重载方法，包含用户ID和角色ID
     * @param memoryId
     * @param ChatMessage
     * @param userId
     * @param roleId
     */
    void saveMessages(String memoryId, String ChatMessage, Long userId, Long roleId);

    /**
     * 查询当前用户的所有聊天记录
     */
    Result<RoleInfoVo> getChatMessage();

    /**
     * 根据memoryId查询详细聊天记录
     * @param memoryId
     * @return
     */
    Result<ChatMessage> getChatMessageList(String memoryId);
}